$(function () {
    layui.use(['form', 'layer', 'jquery', 'upload', 'laydate'],
        function () {
            let $ = layui.jquery,
                form = layui.form,
                layer = layui.layer,
                upload = layui.upload,
                laydate = layui.laydate;

            //自定义验证规则
            form.verify({
                newsTypeID: function (value) {
                    if (value === '') {
                        return '请选择类型';
                    }
                },
                title: function (value) {
                    if (value === '') {
                        return '请填写标题';
                    }
                },
                date:function (value){
                    if(value===''){
                        return '请选择时间'
                    }
                }
                // pass: [/(.+){6,18}$/, '密码必须6到18位'],
                // repass: function (value) {
                //     if ($('#L_pass').val() != $('#L_repass').val()) {
                //         return '两次密码不一致';
                //     }
                // }
            });
            //执行一个laydate实例
            laydate.render({
                elem: '#date', //指定元素
                type:'datetime'
            });
            //监听提交
            form.on('submit(add)', function (data) {
                data.field._method = "put"
                let res = request('http://localhost:8080/admin/news/add', 'post', data.field)
                if (res.code === 0) {
                    layer.alert("增加成功", {
                            icon: 6
                        },
                        function () {
                            //关闭当前frame
                            xadmin.close();

                            // 可以对父窗口进行刷新
                            xadmin.father_reload();
                        });
                } else {
                    layer.alert("添加失败", {
                            icon: 7
                        },
                        function () {
                            //关闭当前frame
                            xadmin.close();
                        })
                }

                return false;
            });
        });

    const {createEditor, createToolbar} = window.wangEditor

    const editorConfig = {
        placeholder: 'Type here...',
        MENU_CONF: {
            // 配置上传图片
            uploadImage: {

                //server必须要配置正确
                server: "http://localhost:8080/upload",

                maxFileSize: 4 * 1024 * 1024, // 1M
                // 最多可上传几个文件，默认为 100
                maxNumberOfFiles: 10,
                // 选择文件时的类型限制，默认为 ['image/*'] 。如不想限制，则设置为 []
                allowedFileTypes: [],
                // 自定义上传参数，例如传递验证的 token 等。参数会被添加到 formData 中，一起上传到服务端。
                fieldName: "file",
                meta: {
                    //官网中把token放到了这里，但是请求的时候会看不到token
                },
                headers: {
                    //所以token放这里
                    token: window.sessionStorage.token,
                },
                // 将 meta 拼接到 url 参数中，默认 false
                metaWithUrl: false,
                // 跨域是否传递 cookie ，默认为 false
                withCredentials: false,
                // 超时时间，默认为 10 秒
                timeout: 5 * 1000, // 5 秒
                customInsert(res, insertFn) {
                    // JS 语法
                    // res 即服务端的返回结果
                    // 从 res 中找到 url alt href ，然后插图图片
                    if (res.code > 0) {
                        return layui.layer.msg('上传失败')
                    }
                    insertFn(res.data);
                    layui.layer.msg('上传完毕', {icon: 1});
                },
            },
        },
        onChange(editor) {
            const html = editor.getHtml()
            $('#content').val(html)
            // 也可以同步到 <textarea>
        }
    }

    const editor = createEditor({
        selector: '#editor-container',
        html: '<p><br></p>',
        config: editorConfig,
        mode: 'default', // or 'simple'
    })

    const toolbarConfig = {
        excludeKeys: ["group-video"]
    }

    const toolbar = createToolbar({
        editor,
        selector: '#toolbar-container',
        config: toolbarConfig,
        mode: 'default', // or 'simple'
    })
    initSelect();
})

//初始化下拉菜单
function initSelect() {
    layui.use("form", function () {
        let form = layui.form;
        //动态显示下拉框并回显内容
        let data = request("http://localhost:8080/admin/newsType/findAll", 'get', null).data;
        let options = '';
        for (let i = 0; i < data.length; i++) {
            if (data[i].enable === 1)
                options += '<option value="' + data[i].id + '">' + data[i].newsTypeName + '</option>';
        }
        let newsTypeID = $("#newsTypeID");
        newsTypeID.append(options);
        form.render();
    });
}